package cn.xval.ft.app.gen.params;

import lombok.Data;
import io.swagger.v3.oas.annotations.media.Schema;
import com.fasterxml.jackson.annotation.JsonInclude;
import jakarta.validation.constraints.NotNull;
import org.hibernate.validator.constraints.Length;
import java.util.Date;

public class ProductContactParams {
    @Data
    @Schema(description = "ProductContact新增请求参数")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public static class ProductContactCreateRequest {
        @NotNull
        @Schema(description = "合于代码")
        @Length(max = 50)
        private String code;
        @NotNull
        @Schema(description = "商品名称")
        @Length(max = 50)
        private String name;
        @Schema(description = "交割日期")
        @Length(max = 8)
        private String expire;
    }
    @Data
    @Schema(description = "ProductContact 返回数据")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public static class ProductContactInfo {
        @Schema(description = "主键")
        private String id;
        @Schema(description = "合于代码")
        private String code;
        @Schema(description = "商品名称")
        private String name;
        @Schema(description = "创建时间")
        private Date createTime;
        @Schema(description = "更新时间")
        private Date updateTime;
        @Schema(description = "交割日期")
        private String expire;
    }
    @Data
    @Schema(description = "ProductContact更新请求参数")
    @JsonInclude(JsonInclude.Include.NON_NULL)
    public static class ProductContactModifyRequest {
        @NotNull
        @Schema(description = "主键")
        private String id;
        @NotNull
        @Schema(description = "合于代码")
        @Length(max = 50)
        private String code;
        @NotNull
        @Schema(description = "商品名称")
        @Length(max = 50)
        private String name;
    }
}